ETF Creation Redemption Platform (CredNex) API Specification (1.2.2)

Download OpenAPI specification:Download

Outline

Production Environment

URL: https://crednex.jpx.co.jp/api/v1

Available Time: Weekdays 7:00 a.m-10:00 p.m (JST)

Demo Environment

URL: https://stg.crednex.jpx.co.jp/api/v1

Available Time: Weekdays 7:00 a.m-10:00 p.m (JST)

Network

  • The access route is provided only via the Internet.
  • Global IP for each environment of this system is not fixed.

Preparations

API Key

Getting an API key is required. An API key is an unique key for each API user. It is used for this service to identify API users. Any API users who wish to use the APIs on this service must request TSE to issue API keys in advance. The API key should be set in the X-API-KEY in header every time you send an API call.

IP Address Whitelisting

You must submit the global IP address of the system making API calls to TSE. All API keys are linked to global IP addresses, and API calls from IP addresses not submitted in advance will not be accepted.

Rate Limits

This API uses the token bucket algorithm for rate limiting. If requests exceed the rate limit defined by the following settings, the bucket will be emptied and the user will receive an error response until tokens are replenished.

  • Rate: 5 tokens per second
  • Burst: 10 tokens

Rate: The speed at which tokens are added to the bucket.

Burst: The maximum number of tokens that can be stored in the bucket.

Overly frequent access is prohibited as stated in the Terms and Conditions. If such behavior is detected, TSE may issue a warning to the user.

Authorization

Method Endpoint MM AP (Agency) AP (Prop) AM
GET /applications
/applications/{applicationId}
Available Available Available Available
GET /statements/{applicationId}
/issues
/issues/blackout
/pcf
/pcf/{pcfNumber}
Available Available Available Available
PATCH /issues N/A N/A N/A Available
POST /applications Available N/A Available N/A
PUT /applications/{applicationId}/approve N/A Available Available Available
PUT /applications/{applicationId}/deny N/A Available Available Available
PUT /applications/{applicationId}/approveCancellationRequest N/A Available Available Available
PUT /applications/{applicationId}/denyCancellationRequest N/A Available Available Available
PUT /applications/{applicationId}/cancellationRequest Available N/A Available N/A

applications

Create/Approve creation/redemption applications

Get applicationId of creation and redemption application

Get applicationId for which the user has permissions to view

Authorizations:
ApiKeyAuth
query Parameters
applicationDate
string <date>

Application date.

statementFixingDate
string <date>

Statement fixing date.

status
string
Enum: "ApplicationInProcessAP" "ApplicationInProcessAM" "Accepted" "StatementInProcessTB" "StatementReturnedForRevisionAM" "StatementFixed" "CancelRequestInProcessAP" "CancelRequestInProcessAM" "Canceled"

Specify the status of the creation and redemption applications

Responses

Response samples

Content type
application/json
{
  • "applications": [
    ],
  • "hasMore": false
}

Register for your creation/redemption application

Fill in the information required to apply for creation/redemption and register your application.

If isClearing is not specified, the CredNex system will automatically complete the value of isClearing for the application. The value set depends on clearingType of the issue being applied for. If the clearingType in each issue's basic information is Clearing or Selectable, isClearing will be set to true and the application will be registered as cleared by JSCC. If the clearingType is Non-Clearing, isClearing will be set to false and the application will be registered as non-cleared by JSCC.

Authorizations:
ApiKeyAuth
Request Body schema: application/json
One of
applicationDate
required
string <date>

Application date

apCode
required
string

AP code. 5-digit number.

etfCode
required
string

ETFfund code. 5-digit alphanumeric character.

creationOrRedemption
required
string

Specify Creation or Redemption. 'C':Creation 'R':Redemption

codesOfTreasuryStock
Array of strings [ 0 .. 5 ] items

Array of Treasury Stock Codes.

excludeTreasuryStockIfNotInPcf
boolean
Default: false

This parameter specifies the behavior when the specified treasury stock codes are not included in the PCF basket. It specifies whether to exclude treasury stocks not included in the PCF basket before registering the application.

If the value is false, and any of the specified treasury stocks are not included in the PCF basket, the application registration will fail with an error. If the value is true, the application registration will succeed after excluding from the specified treasury stocks those not included in the PCF.

For application requests for in-cash ETFs or in-kind ETFs without a specified PCF, no validation is performed to check whether the treasury stocks are included in the PCF basket. In this case, the application registration will always succeed, regardless of the parameter value.

Array of objects = 9 items

Custom fields for extensibility. All values are visible to applicants, AP and AM.

notes
string

Notes from applicants to AP and AM.

isClearing
boolean

Cleared by JSCC or non-cleared. false:non-cleared true:cleared.

If isClearing is not specified, the CredNex system will automatically complete the value of isClearing for the application. The value set depends on clearingType of the issue being applied for. If the clearingType in each issue's basic information is Clearing or Selectable, isClearing will be set to true and the application will be registered as cleared by JSCC. If the clearingType is Non-Clearing, isClearing will be set to false and the application will be registered as non-cleared by JSCC.

numberOfShares
required
integer <int64>

Number of shares. Required when PCF number is NOT specified. Cannot be used together with numberOfUnits.

Responses

Request samples

Content type
application/json
{
  • "applicationDate": "2025-04-15",
  • "apCode": "12345",
  • "etfCode": "12340",
  • "creationOrRedemption": "C",
  • "codesOfTreasuryStock": [
    ],
  • "excludeTreasuryStockIfNotInPcf": false,
  • "custom": [
    ],
  • "notes": "string",
  • "isClearing": true,
  • "pcfNumber": "P180125C13060001",
  • "numberOfUnits": 10
}

Response samples

Content type
application/json
{
  • "applicationId": "2024123100010001"
}

Get detailed application information

Specify the applicationId to get details of the applications that the user has permission to view.

Authorizations:
ApiKeyAuth
path Parameters
applicationId
required
string
Example: 2024123100010001

Application ID

Responses

Response samples

Content type
application/json
{
  • "status": "ApplicationInProcessAP",
  • "applicationDate": "2025-04-15",
  • "mmCode": "12345",
  • "apCode": "12345",
  • "etfCode": "12340",
  • "inKindOrInCash": "InKindCreationInKindRedemption",
  • "creationOrRedemption": "C",
  • "isClearing": false,
  • "numberOfShares": 123456,
  • "pcfNumber": "P180125C13060001",
  • "numberOfUnits": 10,
  • "jasdecAccountInformation": "1234567",
  • "navPerShareCalculationDate": "2025-05-29",
  • "statementFixingDate": "2025-05-29",
  • "trustEstablishmentOrCancellationDate": "2025-05-30",
  • "settlementDate": "2025-05-31",
  • "dvpClearingPrice": "",
  • "codesOfTreasuryStock": [
    ],
  • "custom": [
    ],
  • "notes": "string",
  • "createdAt": "2025-04-15T12:34:56+09:00"
}

Approve a creation/redemption application

Approve an application from market maker or AP. APs can only approve applications with the status 'ApplicationInProcessAP'. AMs can only approve applications with the status 'ApplicationInProcessAM'.

Authorizations:
ApiKeyAuth
path Parameters
applicationId
required
string
Example: 2024123100010001

Application ID

Responses

Response samples

Content type
application/json
{
  • "message": "This approval is not available for this application ID."
}

Deny a creation/redemption application

Deny an application from market maker or AP. APs can only deny applications with the status 'ApplicationInProcessAP'. AMs can only deny applications with the status 'ApplicationInProcessAM'.

Authorizations:
ApiKeyAuth
path Parameters
applicationId
required
string
Example: 2024123100010001

Application ID

Responses

Response samples

Content type
application/json
{
  • "message": "This denial is not available for this application ID."
}

Approve a cancellation request

Approve a cancellation request from market maker or AP. APs can only approve applications with the status 'CancelRequestInProcessAP'. AMs can only approve applications with the status 'CancelRequestInProcessAM'.

Authorizations:
ApiKeyAuth
path Parameters
applicationId
required
string
Example: 2024123100010001

Application ID

Responses

Response samples

Content type
application/json
{
  • "message": "This approval is not available for this application ID."
}

Deny a cancellation request

Deny a cancellation request from market maker or AP. APs can only deny applications with the status 'CancelRequestInProcessAP'. AMs can only deny applications with the status 'CancelRequestInProcessAM'.

Authorizations:
ApiKeyAuth
path Parameters
applicationId
required
string
Example: 2024123100010001

Application ID

Responses

Response samples

Content type
application/json
{
  • "message": "This denial is not available for this application ID."
}

Request APs to cancel an application

Request APs to cancel a registered application.

Authorizations:
ApiKeyAuth
path Parameters
applicationId
required
string
Example: 2024123100010001

Application ID

Responses

Response samples

Content type
application/json
{
  • "message": "Cancellation is not available for this application ID."
}

Get statement data

Get statement data. The layout of the response body differs between cash statements and in-kind statements.

Authorizations:
ApiKeyAuth
path Parameters
applicationId
required
string
Example: 2024123100010001

Application ID

Responses

Response samples

Content type
application/json
Example
{
  • "inKindOrInCash": "InKindCreationInKindRedemption",
  • "applicationId": "2024123100010001",
  • "pcfNumber": "1234567890123456",
  • "amCode": "00123",
  • "amNameJa": "XXX アセットマネジメント",
  • "amNameEn": "XXX Asset Management",
  • "userId": "XXX@crednex.co.jp",
  • "apCode": "00012",
  • "apNameJa": "XXX 証券",
  • "apNameEn": "XXX Securities Co., Ltd.",
  • "etfCode": "12340",
  • "etfISINCode": "JP0000000000",
  • "etfNameJa": "XXX ファンド",
  • "etfNameEn": "XXX fund",
  • "creationOrRedemption": "C",
  • "tbCode": "00001",
  • "tbNameJa": "XXX 信託銀行",
  • "tbNameEn": "XXX Trust Bank Co., Ltd.",
  • "navPerShareCalculationDate": "2025-05-29",
  • "statementFixingDate": "2025-05-29",
  • "settlementDate": "2025-05-31",
  • "trustEstablishmentOrCancellationDate": "2025-05-30",
  • "etfNavPerShare": "12345678901234.1234",
  • "numberOfShares": 10000,
  • "numberOfSharesOfNewRecordOrScheduledDeletion": 123456789012345,
  • "etfNetAssetValue": "12345678901234.1234",
  • "optionalInputItemName1": "string",
  • "optionalInputItemName2": "string",
  • "optionalInputItemContent2": "string",
  • "optionalInputItemName3": "string",
  • "optionalInputItemContent3": "string",
  • "optionalInputItemName4": "string",
  • "optionalInputItemName5": "string",
  • "optionalInputItemName6": "string",
  • "optionalInputItemContent6": "string",
  • "optionalInputItemName7": "string",
  • "optionalInputItemContent7": "string",
  • "optionalInputItemName8": "string",
  • "optionalInputItemContent8": "string",
  • "optionalInputItemName9": "string",
  • "optionalInputItemContent9": "string",
  • "optionalInputItemName10": "string",
  • "optionalInputItemContent10": "string",
  • "notes": "string",
  • "residualNumberOfEtfSharesToBeReturned": 10000,
  • "totalPaymentAmountInCreation": 10000,
  • "basketValuation": "12345678901234.1234",
  • "cashSettledIssues": [
    ],
  • "optionalInputItemContent1": "string",
  • "optionalInputItemContent4": "string",
  • "optionalInputItemContent5": "string",
  • "componentStocks": [
    ]
}

information

Get information related to ETF creation/redemption operations

Update issue details

Partially update issue details. AM can modify the order unit of its own issue. Fields not included in the request body will remain unchanged.

Authorizations:
ApiKeyAuth
Request Body schema: application/json
Array of objects

Responses

Request samples

Content type
application/json
{
  • "issues": [
    ]
}

Response samples

Content type
application/json
{
  • "issues": [
    ]
}

Get basic information of each issue

Get basic information of each issue.

Authorizations:
ApiKeyAuth

Responses

Response samples

Content type
application/json
{
  • "issues": [
    ]
}

Get blackout dates of each issue

Get blackout dates of each issue.

Authorizations:
ApiKeyAuth

Responses

Response samples

Content type
application/json
{
  • "issues": [
    ]
}

Get PCF list

Get PCF list includes only those whose expirationDate is today or later.

If you want to retrieve the component stocks of a PCF, please request to /pcf/{pcfNumber}.

By setting query parameters isToday and enabledStatus to true, you can retrieve all PCFs that are available for application today(based on JST).

Authorizations:
ApiKeyAuth
query Parameters
isToday
boolean
Default: true

Retrieve only PCFs for which the today date (based on JST) is between effectiveDate and expirationDate.

enabledStatus
string
Default: "both"
Enum: "enabled" "disabled" "both"

Retrieve PCFs filtered by their enabled status. If enabled, only PCFs whose isEnabled value is true are retrieved. If disabled, only PCFs whose isEnabled value is false are retrieved. If both or not specified, PCFs with both true and false values for isEnabled are returned.

etfCode
string

Retrieve only PCFs linked to the specified ETF. If not specified, all ETFs are returned.

Responses

Response samples

Content type
application/json
{
  • "pcf": [
    ]
}

Get PCF by specifying PCF number

Get PCF by specifying PCF number.

Authorizations:
ApiKeyAuth
path Parameters
pcfNumber
required
string
Example: P180125C13060001

PCF number. 16-digit alphanumeric character.

Responses

Response samples

Content type
application/json
{
  • "pcfNumber": "1234567890123456",
  • "createdAt": "2025-11-14T14:33:00+09:00",
  • "am": {
    },
  • "fileName": "Basket1.csv",
  • "etf": {
    },
  • "creationOrRedemption": "C",
  • "estimatedNumberOfSharesPerUnit": 123456789012345,
  • "basketName": "string",
  • "isEnabled": true,
  • "effectiveDate": "2025-11-12",
  • "expirationDate": "2025-11-14",
  • "optionalInputItem": [
    ],
  • "notes": "string",
  • "componentStocks": [
    ]
}